SPSS COMPUTE 命令简明教程
本文将指导你如何使用 SPSS 的 COMPUTE
命令。COMPUTE
命令用于设置(可能是新的)数值型变量 和 字符型变量 的数据值。这些值通常是其他变量的函数,例如 MEAN、SUM 或更高级的函数。
我们将使用 hospital.sav 数据集进行演示,该数据集的截图如下所示。
在开始之前,我们首先将最后 5 个变量的 6 设置为 用户缺失值。我们可以通过运行以下 语法 来实现:
missing values doctor_rating to facilities_rating (6).
SPSS COMPUTE 现有数值型变量
最简单的 COMPUTE
示例可能是计算一个已经存在的数值型变量。假设我们想给 facilities_rating
变量的所有值加 1,因为我们觉得受访者对它的评价过于负面。以下语法可以实现这一点。请注意,COMPUTE
是一个转换,因此我们还需要运行 EXECUTE
(“exe.”) 才能看到结果。
***Add one point to all values in facilities_rating.
**
compute facilities_rating = facilities_rating + 1.
exe.
请注意,6 不会变成 7。这是因为 6 是一个用户缺失值,并且它被用在了一个基本的 数值函数 中。
SPSS COMPUTE 新数值型变量
如果计算的变量尚不存在,SPSS 将创建一个 f
格式的数值型变量。这意味着我们不能直接使用 COMPUTE
命令创建新的字符型变量,但我们稍后会介绍如何操作。我们首先计算 5 个评分变量的平均值,但仅针对至少有 3 个有效值的个案。请注意,通过使用点运算符可以轻松实现这一点。
***Compute mean over 5 rating variables if at least 3 valid values are present.
**
compute mean_score = mean.3(doctor_rating to facilities_rating).
exe.
SPSS COMPUTE 现有字符型变量
在通常的语言中,COMPUTE
通常指对数字的操作。但是,在 SPSS 中,COMPUTE
也用于设置字符型变量的值。请记住,您不能在字符型变量上使用 数值函数,反之亦然。以下示例将 surname_prefix
变量的值转换为小写。
***Convert all values in surname_prefix to lower case.
**
compute surname_prefix = lower(surname_prefix).
exe.
SPSS COMPUTE 新字符型变量
SPSS 只能计算现有的字符型变量。对于新的字符型变量,我们必须首先使用 STRING 命令 创建新的(空的)变量。完成此操作后,我们可以使用 COMPUTE
命令设置它们的值。例如,以下语法通过连接受访者的姓名组成部分来创建 full_name
变量。
***1. Create new (empty) string variable.
**
string full_name(a25).
***2. COMPUTE full_name with CONCAT and RTRIM.
**
compute full_name = concat(rtrim(first_name),' ',rtrim(surname_prefix),' ',rtrim(last_name)).
exe.
SPSS COMPUTE 日期、时间和日期时间变量
COMPUTE
命令可用于创建新的 日期变量、时间变量 和日期时间变量。这是因为它们都是数值型变量。但是,新的数值型变量始终具有 f
格式,这通常不适合上述变量。解决方法是首先使用 日期函数 或基本的 数值函数 来计算变量。完成此操作后,使用 FORMATS 命令 以适当的方式显示它们的值。以下语法给出了一个例子。
***1. Compute new datetime variable.
**
compute entry_moment = entry_date + entry_time.
exe.
***2. Show datetime values (in seconds) as normal dates with times.
**
formats entry_moment(datetime20).